﻿@{
    //ViewBag.Title = "Index";
    Layout = "~/Views/Shared/_LayoutAdmin.cshtml";

    SelectList slState = new SelectList(new[] {
        new SelectListItem { Value = "3", Text = "-- Tất cả --"},
        new SelectListItem { Value = "0", Text = "Chỉ báo cáo"},
        new SelectListItem { Value = "1", Text = "Chỉ giám sát"},
        new SelectListItem { Value = "2", Text = "Giám sát và báo cáo "}
    }, "Value", "Text", 3);

    var lstNhomDonVi = ViewBag.lstNhomDonVi;
    var lstDonVi = ViewBag.lstDonVi;
}

<div class="page-bar">
    <ul class="page-breadcrumb" style="padding: 4px;">
        <li>
            <i class="fa fa-home"></i>
            @*<a href="#">Quản lý danh mục đơn vị</a>*@
            <a href="#">@ViewBag.CurrentMenuName</a>
        </li>
    </ul>
</div>

<div class="row">
    @*<div class="col-md-2 col-sm-2" style="">@Html.Label("Tên đơn vị: ", new { id = "lblName", @class = "" })</div>
        <div class="col-md-3 col-sm-4" style="margin-bottom: 10px;">@Html.TextBox("ten_don_vi", "", new { @class = "form-control input-sm", style = "", placeholder = "Tên nhóm đơn vị", maxlength = 255 })</div>*@

    <div class="col-md-2 col-sm-2" style="">@Html.Label("Nhóm đơn vị cơ bản:")</div>
    <div class="col-md-3 col-sm-3" style="margin-bottom: 10px;">
        @Html.DropDownList("nhom_don_vi", lstNhomDonVi as List<SelectListItem>, null, new { @class = "form-control input-sm" })
    </div>

    <div class="col-md-1 col-sm-1" style="">@Html.Label("Đơn vị:")</div>
    <div class="col-md-3 col-sm-3" style="margin-bottom: 10px;">
        @Html.DropDownList("don_vi", lstDonVi as List<SelectListItem>, null, new { @class = "form-control input-sm" })
    </div>

    <div class="col-md-2 col-sm-2">
        <div class="pull-right">
            <button id="btnSave" class="btn btn-sm btn-default"><i class="fa fa-save"></i>Lưu nhóm người dùng</button>
            <div id="divPrintEnum" style="display:none;"></div>
        </div>
    </div>
</div>

<div class="row" style="margin-top: 5px;">
    <div class="editor-field">
        <div id="checkboxes">
        </div>

        @*@for (int i = 0; i < Model.listNhomDonVi.Count; i++)
            {
                <label class="col-md-4">
                    @{
                if (Model.listNhomDonVi[i].IS_CHECKED == 1)
                {
                    <input type="checkbox" name="listNhomDonVi" value="@Model.listNhomDonVi[i].NhomDonViId"
                           checked='checked'>@Model.listNhomDonVi[i].TenNhomDonVi
                }
                else if (Model.listNhomDonVi[i].IS_CHECKED == 0)
                {
                    <input type="checkbox" name="listNhomDonVi" value="@Model.listNhomDonVi[i].NhomDonViId">@Model.listNhomDonVi[i].TenNhomDonVi
                }
                    }
                </label>
            }*@
    </div>
</div>



<script type="text/javascript">
    $(document).ready(function () {

        $('#btnSave').bind('click', function (event) {
            btnSaveClick();
        });

        $('#btnAdd').bind('click', function (event) {
            functionCreateOrUpdate("", "Thêm mới", "Tạo mới");
        });

        $('#nhom_don_vi').change(function () {
            var nhomid = $('#nhom_don_vi').val();
            $.ajax({
                dataType: "json",
                type: "POST",
                url: '/NguoiDungAdmin/GetDonViByNhom',
                contentType: "application/json",
                data: JSON.stringify({ strNhomDonViID: nhomid }),
                success: function (data) {
                    var result = '';
                    for (var i = 0; i < data.length; i++) {
                        result += '<option value="' + data[i].Value + '">' + data[i].Text + '</option>';
                    }
                    $("#don_vi").html(result);

                    
                    //OnCriteria(0);
                }
            });
        });

        $('#don_vi').change(function () {
            var donviID = $('#don_vi').val();
            arrOldCheckedGroups = [];
            $.ajax({
                dataType: "json",
                type: "POST",
                url: '/DonVi/GetGroupByDonViID',
                contentType: "application/json",
                data: JSON.stringify({ strDonViID: donviID }),
                success: function (data) {
                    var result = '';
                    for (var i = 0; i < data.length; i++) {
                        
                        result += '<div class="col-md-3">'
                        result += '<input type="checkbox" name="groups" value="' + data[i].GroupId + '"';
                        if (data[i].IS_CHECKED == 1)
                        {
                            result += 'checked="checked"';
                        }
                        result += ' />' + data[i].GroupName + '</div>';
                    }
                    $("#checkboxes").html(result);

                    //OnCriteria(0);
                }
            });

            $('input[name="groups"]:checked').each(function () {
                arrOldCheckedGroups.push($(this).val());
            });
        });

        
        headers['VerificationToken'] = '@GetAntiForgeryToken()';
    });

    var headers = {};
    var arrOldCheckedGroups = [];

    function btnSaveClick() {
        var paraDonViID = $('#don_vi').val().trim();
        
        var arrCheckedGroups = [];
        $('input[name="groups"]:checked').each(function () {
            arrCheckedGroups.push($(this).val());
        });

        if (arrCheckedGroups.length == 0) {
            alert("Chưa gán nhóm người dùng cho đơn vị!");
            return;
        }

        if (JSON.stringify(arrCheckedGroups.sort()) === JSON.stringify(arrOldCheckedGroups.sort())) {
            alert("Không có thay đổi nhóm người dùng");
        }
        else {
            $("#divLoading").show();
            $.ajax({
                dataType: "json",
                type: "POST",
                url: '/DonVi/ActionSaveGroups',
                headers: headers,
                //contentType: "application/json",
                data: {
                    DonViId: paraDonViID,
                    listGroups: JSON.stringify(arrCheckedGroups),
                },
                success: function (response) {
                    if (response != null && response.status == 200) {
                        Layout.toastr("", response.result);
                        result = true;
                    } else {
                        Layout.toastr("", response.result);
                    }
                    $("#divLoading").hide();
                },
                error: function (errorThrown) {//function(request, textStatus, errorThrown)  {
                    alert(JSON.stringify(errorThrown));
                    //alert(request.getAllResponseHeaders());
                    //alert(request.getResponseHeader('WWW-Authenticate'));
                }
            });
        }

        //var arr = arrCheckedGroups.concat(arrOldCheckedGroups);
        //var sorted_arr = arr.sort();
        //var results = [];
        //for (var i = 0; i < arr.length - 1; i++) {
        //    if (sorted_arr[i + 1] == sorted_arr[i]) {
        //        results.push(sorted_arr[i]);
        //    }
        //}

        //if (results.length == arrOldCheckedGroups.length)
        //{
        //    alert("Không có thay đổi nhóm người dùng");
        //    return;
        //}
        
        
        //setTimeout(function () { $('#search_form').find('input:text:visible:first').focus(); }, 500);
    }

    @functions{
        public string GetAntiForgeryToken()
        {
            string cookieToken, formToken;
            AntiForgery.GetTokens(null, out cookieToken, out formToken);
            return cookieToken + "," + formToken;
        }
    }
</script>
